package com.qf.hytrix.service;

import com.qf.service.Book;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;

import java.util.Arrays;
import java.util.List;

/**
 * @Auther: Song
 * @Date: 2022-03-19 14:52
 */
@Service
public class BookService2 {
    @Autowired
    RestTemplate restTemplate;

    /**
     *  调用 storage 中的接口
     * @param ids
     * @return
     */
    public List<Book> getBooksByIds(List<Integer> ids) {
        //不能直接返回 list 或 book 在 http 返回的是 map 的 list，所以必须转一下
        Book[] books = restTemplate.getForObject("http://storage/books/?ids={1}", Book[].class, StringUtils.join(ids, ","));
        return Arrays.asList(books);
    }
}
